#ifndef BONESTATE_H
#define BONESTATE_H


struct BoneState
{

    BoneState(unsigned id, double loops, bool motion)
        :boneId(id), loops(loops), motion(motion){}

        /** Destructor */
        virtual ~BoneState(){}

        /** Bone identifier */
        unsigned int boneId;

        /** number of 2PI loop's starts from orginal angle */
        double loops;

        /** determines that bone will move or not*/
        bool motion;
};

struct RootState : public BoneState
{
    RootState(unsigned id, double loops, bool motion, wxRealPoint translation)
    : BoneState(id, loops, motion), translation(translation){}

    RootState(BoneState bState, wxRealPoint translation)
    : BoneState(bState), translation(translation){}

    /** start point for all sceleton */
    wxRealPoint translation;
};


#endif // BONESTATE_H
